iT邦幫忙

2022 iThome 鐵人賽

DAY 12
0
Modern Web

資料庫也有版本控制系列 第 12

Day 12: 使用 API First 的概念解決共享問題

  • 分享至 

  • xImage
  •  

四、解決進行資料庫版控會遇到的問題

Day 10 : 多個系統使用的同一個資料庫時要如何做版本變更
Day 11 : 多系統不共享資料庫會造成的問題
-> Day 12: 使用 API First 的概念解決共享問題
Day 13 : 資料庫如何退回之前的版本
Day 14 : 如何處理資料表中被刪除或更名的欄位
Day 15 : 資料表降級時如何處理資料庫中被刪除的欄位


我們在昨天有提到了,當多個系統共用同一個資料庫時,會建議他們拆開並利用 API 的方式來連接彼此

而這時我們就會需要對這類型供系統用 API 做處理,不同於一般對外的 API,其權限單純僅需要驗證是否來自於許可的系統,因此很常會發一組固定的 Token 或系統啟動時與 Auth 的系統要 Token 來驗證,再來會需要設計還原用的 API

除了查詢這類不異動資料的行為,增加、刪除、修改 都會異動到資料,因此有做法是在呼叫這類 API 時會回傳一組動作的 Id,當要撤銷這個行為時呼叫還原的 API 來做到 unitofwork 的效果,當然若單純等到失敗才呼叫,有可能在這過程中已經有其他資料讀取導致髒資料,這時可以依據功能的性質設計資料鎖表來確保資料一致性


後續預告

這是 解決進行資料庫版控會遇到的問題 的第三天,明日將會聊聊資料庫如何退回之前的版本


上一篇
Day 11 : 多系統不共享資料庫會造成的問題
下一篇
Day 13 : 資料庫如何退回之前的版本
系列文
資料庫也有版本控制30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言